xen.git
19 years ago[IA64] support FPSWA emulation
awilliam@xenbuild.aw [Thu, 25 May 2006 21:47:33 +0000 (15:47 -0600)]
[IA64] support FPSWA emulation

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
19 years ago[IA64] remove evtchn_ia64.c
awilliam@xenbuild.aw [Thu, 25 May 2006 21:38:16 +0000 (15:38 -0600)]
[IA64] remove evtchn_ia64.c

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] fix AFLAGS again
awilliam@xenbuild.aw [Wed, 24 May 2006 22:44:20 +0000 (16:44 -0600)]
[IA64] fix AFLAGS again

"AFLAGS = -nostdinc $CPPFLAGS" is removed

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
19 years ago[IA64] acpi read-only mapping
awilliam@xenbuild.aw [Wed, 24 May 2006 17:04:33 +0000 (11:04 -0600)]
[IA64] acpi read-only mapping

implemented dom0 acpi read-only mapping

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] GNTMAP_readonly support linux part
awilliam@xenbuild.aw [Wed, 24 May 2006 16:59:28 +0000 (10:59 -0600)]
[IA64] GNTMAP_readonly support linux part

add read only mapping support.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] GNTMAP_readonly support xen part
awilliam@xenbuild.aw [Wed, 24 May 2006 16:56:47 +0000 (10:56 -0600)]
[IA64] GNTMAP_readonly support xen part

add grant table GNTMAP_readonly support.
introduce ASSIGN_readonly flags for read only page assignment to
pseudo physical address space.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] support DOMID_XEN and DOMID_IO of foreign domain page mapping
awilliam@xenbuild.aw [Wed, 24 May 2006 16:39:55 +0000 (10:39 -0600)]
[IA64] support DOMID_XEN and DOMID_IO of foreign domain page mapping

support of foreign domain page mapping of DOMID_XEN and DOMID_IO.
This patch is needed for xentrace and xenmon.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] fix dirty_bit in xenivt.S
awilliam@xenbuild.aw [Wed, 24 May 2006 15:59:04 +0000 (09:59 -0600)]
[IA64] fix dirty_bit in xenivt.S

fix dirty_bit in linux-2.6-xen-sparse/arch/ia64/xen/xenivt.S
there was itc.d left which wasn't para-virtualized.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] remove unused audio driver from buildconfigs
awilliam@xenbuild.aw [Wed, 24 May 2006 14:56:52 +0000 (08:56 -0600)]
[IA64] remove unused audio driver from buildconfigs

There'll be better way to prevent bogus driver to register with
an empty irq line. But for now, disable in buildconfig is easier.

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] swap XEN_HYPER_ITC_D and XEN_HYPER_ITC_I
awilliam@xenbuild.aw [Wed, 24 May 2006 14:50:34 +0000 (08:50 -0600)]
[IA64] swap XEN_HYPER_ITC_D and XEN_HYPER_ITC_I

Signed-off-by Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>

19 years ago[IA64] Add ptc.l emulation
awilliam@xenbuild.aw [Wed, 24 May 2006 14:48:21 +0000 (08:48 -0600)]
[IA64] Add ptc.l emulation

This patch adds support for ptc.l emulation for xenlinux.
In 2.6.16 kernel it flush_tlb_range will call global_tlb_purge
directly, so ptc.l shouldn't be used when CONFIG_SMP enable.
But in order to enhance performance (maybe), 2.6.17 kernel in
smp environment will do mm check first. If mm is current->active_mm
and the mm (corresponding process) just runs on the local processor,
kernel only needs to do ptc.l at local processor instead of global purge.
So ptc.l emulation is necessary for 2.6.17 kernel.

Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Zhang Xiantao <xiantao.zhang@intel.com>
19 years ago[IA64] work around ENOSYS vs EINVAL in ioremap
awilliam@xenbuild.aw [Tue, 23 May 2006 23:05:27 +0000 (17:05 -0600)]
[IA64] work around ENOSYS vs EINVAL in ioremap

We should not panic the domain for an EINVAL return from the ioremap
hyerpcall.  This was only meant for ENOSYS.  Long term this is probably
not the best place for this kind of sanity checking.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
19 years ago[IA64] Add -rc support to sparse-merge
awilliam@xenbuild.aw [Tue, 23 May 2006 21:10:27 +0000 (15:10 -0600)]
[IA64] Add -rc support to sparse-merge

Signed-off-by: Aron Griffis <aron@hp.com>
19 years ago[IA64] make xenLinux/ia64 privcmd mmap not to use dom0 memory
awilliam@xenbuild.aw [Tue, 23 May 2006 21:09:21 +0000 (15:09 -0600)]
[IA64] make xenLinux/ia64 privcmd mmap not to use dom0 memory

xenLinux/ia64 privcmd mmap uses pseudo physical address space.
it used alloc_pages() to allocate the space.
It wastes dom0 memory and sometimes several hundreds megabytes is
allocated depending on domU memory size.
With this patch xenLinux/ia64 trys to find the region which can be
used safely and uses the reasion.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] Final patch to make evtchn fully working for xen/ia64
awilliam@xenbuild.aw [Tue, 23 May 2006 15:17:57 +0000 (09:17 -0600)]
[IA64] Final patch to make evtchn fully working for xen/ia64

OK, this is the last one of patch sets, which enables xen/ia64 to work
on event channel mechanism fully. Now user may observe /proc/interrupts
of dom0 as:

           CPU0
 34:         12        Phys-irq  ide0
 39:          0        Phys-irq  acpi
 45:        322        Phys-irq  serial
 48:     115006        Phys-irq  peth0
 49:      16269        Phys-irq  ioc0
 50:         31        Phys-irq  ioc1
 51:          2        Phys-irq  ehci_hcd:usb1
 52:          0        Phys-irq  uhci_hcd:usb2
 53:         55        Phys-irq  uhci_hcd:usb3
256:          0     Dynamic-irq  RESCHED0
257:          0     Dynamic-irq  IPI0
258:      44572     Dynamic-irq  timer0
259:       2316     Dynamic-irq  xenbus
260:       8304     Dynamic-irq  blkif-backend
261:      25947     Dynamic-irq  vif3.0
ERR:          0

Based on this patch, dom0's performance is not affected, while domU's
network output is seen with several percents increase. More important,
now xen/ia64 can progress a base step towards driver domain support!

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] Clean up pirq bind code
awilliam@xenbuild.aw [Tue, 23 May 2006 14:56:13 +0000 (08:56 -0600)]
[IA64] Clean up pirq bind code

This patch clears some pirq related logic as a last prep step
for the final evtchn to be effective. Same, this patch doesn't
break existing logic.

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] Add event injection logic
awilliam@xenbuild.aw [Tue, 23 May 2006 14:34:48 +0000 (08:34 -0600)]
[IA64] Add event injection logic

Add event inject logic. Because up to this point there's no place
to register callback, this patch doesn't break existing working flow.

Signes-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] Add do_callback_ops
awilliam@xenbuild.aw [Tue, 23 May 2006 14:24:09 +0000 (08:24 -0600)]
[IA64] Add do_callback_ops

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] Import linux header files
awilliam@xenbuild.aw [Tue, 23 May 2006 14:18:48 +0000 (08:18 -0600)]
[IA64] Import linux header files

Import hw_irq.h and irq.h from linux

Signed-off-by Kevin Tian <kevin.tian@intel.com>

19 years ago[IA64] update default build configs
awilliam@xenbuild.aw [Mon, 22 May 2006 21:08:26 +0000 (15:08 -0600)]
[IA64] update default build configs

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
19 years agomerge with xen-unstable.hg
awilliam@xenbuild.aw [Mon, 22 May 2006 20:13:38 +0000 (14:13 -0600)]
merge with xen-unstable.hg

19 years ago[IA64] Work around auto-ballooning changes.
kaf24@firebug.cl.cam.ac.uk [Mon, 22 May 2006 16:30:25 +0000 (17:30 +0100)]
[IA64] Work around auto-ballooning changes.
Original patch from Kevin Tian at Intel.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoFix x86/64 by passing the required length to reserve_bootmem instead of the end address
Ian.Campbell@xensource.com [Mon, 22 May 2006 16:03:24 +0000 (17:03 +0100)]
Fix x86/64 by passing the required length to reserve_bootmem instead of the end address

Fixup a warning since the machine_e820 and memmap variables are only used if
CONFIG_XEN_PRIVILEGED_GUEST.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[IA64] Enable VTi network by defalt
awilliam@xenbuild.aw [Mon, 22 May 2006 14:53:26 +0000 (08:53 -0600)]
[IA64] Enable VTi network by defalt

Due to dom0_vp open, we can enable VTi's network in configuration file now.

From: Zhang Xiantao <xiantao.zhang@intel.com>
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
19 years agoPatch linux so that /proc/stat shows all -- not just online -- CPUs.
ack@kneesa.uk.xensource.com [Mon, 22 May 2006 14:42:54 +0000 (15:42 +0100)]
Patch linux so that /proc/stat shows all -- not just online -- CPUs.
This way, tools such as TOP don't freak out when CPUs are hotplugged.

19 years agoFix x86/64 -xenU build. probe_roms() is only defined if building a privleged
Ian.Campbell@xensource.com [Mon, 22 May 2006 14:03:46 +0000 (15:03 +0100)]
Fix x86/64 -xenU build. probe_roms() is only defined if building a privleged
or !xen build.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoRemove DOM0_PHYSICAL_MEMORY_MAP dom0 op.
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:23:21 +0000 (09:23 +0100)]
Remove DOM0_PHYSICAL_MEMORY_MAP dom0 op.

The addition of the e820 style memory_op sub calls make this operation
obsolete.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoConvert x86/64 Linux to use the new memory map hypercall.
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:23:15 +0000 (09:23 +0100)]
Convert x86/64 Linux to use the new memory map hypercall.

This change removes several of the differences between the bare-metal
and Xen versions.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoConvert x86/32 Linux to use the new memory map hypercall.
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:23:03 +0000 (09:23 +0100)]
Convert x86/32 Linux to use the new memory map hypercall.

This change removes several of the differences between the bare-metal
and Xen versions.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoNew memory_op subops which return the apparent or actual physical address map.
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:22:18 +0000 (09:22 +0100)]
New memory_op subops which return the apparent or actual physical address map.

The new subops return a memory map in e820 format. This will allow the
removal of some Xen special casing in the Linux port by using the same
code as native.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoAdd include/asm-x86_64/e820.h to sparse tree
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:21:58 +0000 (09:21 +0100)]
Add include/asm-x86_64/e820.h to sparse tree

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years agoRe-order code in preparation for future patches.
Ian.Campbell@xensource.com [Mon, 22 May 2006 08:21:01 +0000 (09:21 +0100)]
Re-order code in preparation for future patches.

There is no change to the functions which have moved.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
19 years ago[LOADER] More sanity checks when parsing Elf images to avoid
kaf24@firebug.cl.cam.ac.uk [Sun, 21 May 2006 19:15:58 +0000 (20:15 +0100)]
[LOADER] More sanity checks when parsing Elf images to avoid
out-of-bounds array accesses when loading the image.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[ACM] Replace the union structure parameter of the ACM hypercalls
kaf24@firebug.cl.cam.ac.uk [Sun, 21 May 2006 18:05:31 +0000 (19:05 +0100)]
[ACM] Replace the union structure parameter of the ACM hypercalls
with command-specific request structures. It aligns the ACM
hypercalls with the way parameters are passed in the event channel
hypercalls.

Advantages include backward-compatibility regarding old guests when
new calls are added and clarity of the code.

Signed-off by: Reiner Sailer <sailer@us.ibm.com>

19 years agoFinish separating the typedefs from structure definitions in Xen public headers.
kaf24@firebug.cl.cam.ac.uk [Sun, 21 May 2006 17:57:42 +0000 (18:57 +0100)]
Finish separating the typedefs from structure definitions in Xen public headers.
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
19 years ago[LOADER] Another change to the elf_paddr_offset/virt_base logic.
kaf24@firebug.cl.cam.ac.uk [Sun, 21 May 2006 17:55:14 +0000 (18:55 +0100)]
[LOADER] Another change to the elf_paddr_offset/virt_base logic.
This avoids using zero to indicate 'undefined'. Instead we use
an explicit boolean to indicate whether suitable defaults should
be used. As well as making the logic clearer (I believe) it also
avoids problems if anyone ever explicitly specifies virt_base
(and also elf_paddr_offset) as zero.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[IA64] Enable P2M/VP by default
awilliam@xenbuild.aw [Sun, 21 May 2006 13:49:46 +0000 (07:49 -0600)]
[IA64] Enable P2M/VP by default

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
19 years ago[IA64] add missing ia64_trace_syscall privop
awilliam@xenbuild.aw [Sun, 21 May 2006 13:31:02 +0000 (07:31 -0600)]
[IA64] add missing ia64_trace_syscall privop

This patch adds a missing privop definition for ia64_trace_syscall
when CONFIG_XEN is unset.  It also cleans up some inconsistent
spacing.

Signed-off-by: Aron Griffis <aron@hp.com>
19 years ago[IA64] make it possible to disable CONFIG_XEN
awilliam@xenbuild.aw [Sun, 21 May 2006 13:28:05 +0000 (07:28 -0600)]
[IA64] make it possible to disable CONFIG_XEN

This patch helps distro inclusion efforts by making it possible to
build a xen-patched Linux kernel with CONFIG_XEN disabled.

Signed-off-by: Aron Griffis <aron@hp.com>
19 years ago[IA64] sparse-merge: check SPARSEDIR for modifications
awilliam@xenbuild.aw [Sun, 21 May 2006 13:24:51 +0000 (07:24 -0600)]
[IA64] sparse-merge: check SPARSEDIR for modifications

Check SPARSEDIR for modifications before allowing the merge.
This removes the need for the FIXME.  Additionally clean up
empty diffs at the end of the run.

Signed-off-by: Aron Griffis <aron@hp.com>
19 years ago[IA64] minor fix for sparse-merge
awilliam@xenbuild.aw [Sun, 21 May 2006 13:22:58 +0000 (07:22 -0600)]
[IA64] minor fix for sparse-merge

Here's another sparse-merge patch to allow ARCH to be set on the
command-line, and to add -C to the final hg update since it's probably
switching between branches.

Signed-off-by: Aron Griffis <aron@hp.com>
19 years ago[LOADER] Remove check for VIRT_BASE existence: it's not needed
kaf24@firebug.cl.cam.ac.uk [Sun, 21 May 2006 08:55:15 +0000 (09:55 +0100)]
[LOADER] Remove check for VIRT_BASE existence: it's not needed
to prevent xend crashign (when Aravindh's latest patch is
applied) and breaks ia64. Also, ensure we set a reasonable
default for elf_paddr_offset.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[BUILDER] Always build initial PAE pagetables with a fourth mid-level
kaf24@firebug.cl.cam.ac.uk [Sat, 20 May 2006 15:25:28 +0000 (16:25 +0100)]
[BUILDER] Always build initial PAE pagetables with a fourth mid-level
pgdir. This is required for Xen to be able to insert its own protected
mappings. At the same time, clean up 32b and pae pagetable-size
calculations to use the helper macro already used for x86/64.

Based on an original patch from Bruce Rogers at Novell.

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoDon't require sed to support the -r option.
cl349@firebug.cl.cam.ac.uk [Fri, 19 May 2006 21:08:32 +0000 (22:08 +0100)]
Don't require sed to support the -r option.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
19 years agoMake the latest network-bridge tweaks work in a busybox environment too.
cl349@firebug.cl.cam.ac.uk [Fri, 19 May 2006 21:00:28 +0000 (22:00 +0100)]
Make the latest network-bridge tweaks work in a busybox environment too.

Signed-off-by: David Lively <dlively@virtualiron.com>
19 years ago[SHADOW] Crash the guest rather than BUGing the whole system when out of memory.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 16:50:32 +0000 (17:50 +0100)]
[SHADOW] Crash the guest rather than BUGing the whole system when out of memory.
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
19 years agoMerged.
emellor@leeni.uk.xensource.com [Fri, 19 May 2006 16:31:34 +0000 (17:31 +0100)]
Merged.

19 years agoExpose the exceptions thrown by xen.lowlevel.xc so they can be caught.
Anthony Liguori [Fri, 19 May 2006 16:31:28 +0000 (17:31 +0100)]
Expose the exceptions thrown by xen.lowlevel.xc so they can be caught.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
19 years ago[MINIOS] PAE support.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 15:52:52 +0000 (16:52 +0100)]
[MINIOS] PAE support.
Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil@unisys.com>
19 years agoAdd a read-verify block device test to xm-test.
harry@localhost.localdomain [Fri, 19 May 2006 15:30:21 +0000 (16:30 +0100)]
Add a read-verify block device test to xm-test.

19 years agoThis patch resizes the file system on the xm-test HVM disk.img to use
stekloff@elm3b216.beaverton.ibm.com [Fri, 19 May 2006 15:29:34 +0000 (16:29 +0100)]
This patch resizes the file system on the xm-test HVM disk.img to use
the entire space available.

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
19 years agoMerged.
emellor@leeni.uk.xensource.com [Fri, 19 May 2006 15:21:49 +0000 (16:21 +0100)]
Merged.

19 years agoThe enforce_dom0_cpus test sets the number of vcpus for the Dom0 and
emellor@leeni.uk.xensource.com [Fri, 19 May 2006 15:21:43 +0000 (16:21 +0100)]
The enforce_dom0_cpus test sets the number of vcpus for the Dom0 and
checks to see if they have been set correctly. We found that on
multi-proc systems, it takes a certain amount of time for the number of
vcpus to change.

This patch checks the number of vcpus inside a loop until it is correct
or 20 seconds elapse, whichever happens first. If after 20 seconds the
number of vcpus is not changed correctly, an error is raised.

Signed-off-by: Rajagopalan Subrahmanian <raj.subrahmanian@unisys.com>
19 years agoSeveral page allocations, done in the hypervisor when starting an HVM
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 15:10:52 +0000 (16:10 +0100)]
Several page allocations, done in the hypervisor when starting an HVM
domain, are not checked.  This can cause the physical machine to crash
when starting the HVM domain during low-memory conditions.

Kudos to Charles Arnold for catching the problem with
shadow_direct_map_init.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
19 years ago[XEND] An empirical and more conservative memory-overhead estimate for PV and HVM...
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 15:08:51 +0000 (16:08 +0100)]
[XEND] An empirical and more conservative memory-overhead estimate for PV and HVM guests.

This patch calculates the overhead needed for HVM domains.  If HVM is
supported by the hardware, I add a little ballooning overhead to
paravirtualized VMs also, to avoid low-memory situations.  (There are
various unchecked alloc_domheap_pages calls in shadow*.c that I am
trying to avoid tripping over for now...)  The values in this patch work
fine on 32 bit; I may update them later based on feedback and/or testing
on 64 bit.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
19 years ago[XEND] separate concept of initial memory size and overhead memory size.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 15:07:36 +0000 (16:07 +0100)]
[XEND] separate concept of initial memory size and overhead memory size.

When a domain (whether para- or fully-virtualized) reports how much
overhead memory it requires (via getDomainMemory in image.py), all such
memory was immediately allocated to the domain itself.  This is
certainly incorrect for HVM domains, since additional
increase_reservation calls are made later in qemu.  Since all ballooned
memory is already taken, qemu will fail.  The fix is to treat the
requested memory size and the overhead size as separate values.  The
requested memory size is immediately allocated to the new domain; the
overhead is left unallocated for whatever else might need it later.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
19 years ago[XM-TEST] Use explicit (IP id==packet size) on hping2 tests to avoid
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 15:01:08 +0000 (16:01 +0100)]
[XM-TEST] Use explicit (IP id==packet size) on hping2 tests to avoid
problems with IP id==0

Signed-off-by: Jim Dykman <dykman@us.ibm.com>
19 years ago[NET] front: Remove duplicate maybe_wake_tx
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:58:46 +0000 (15:58 +0100)]
[NET] front: Remove duplicate maybe_wake_tx

Since network_tx_buf_gc unconditionally calls network_maybe_wake_tx at
the end, there is no need to call it again right after a call to
network_tx_buf_gc.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years agoFix xentrace_format to deal with more than 16 CPUs.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:52:35 +0000 (15:52 +0100)]
Fix xentrace_format to deal with more than 16 CPUs.
Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
19 years ago[NET] front: remove use of typedefs for structures.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:51:26 +0000 (15:51 +0100)]
[NET] front: remove use of typedefs for structures.
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
19 years agoPlace typedefs on their own separate lines in the Xen public headers.
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:51:06 +0000 (15:51 +0100)]
Place typedefs on their own separate lines in the Xen public headers.
Makes it easier to share with Linux tree.

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
19 years agoIntroduce is_running_on_xen() to test whether we are running on Xen before
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:35:19 +0000 (15:35 +0100)]
Introduce is_running_on_xen() to test whether we are running on Xen before
initialising a Xen-specific driver or subsystem.

For ia64:
 * Call xen_init in setup_arch.
 * Remove xen_ksyms.c

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years agoFix a crash in gdbserver-xen where it references unmapped memory if
kaf24@firebug.cl.cam.ac.uk [Fri, 19 May 2006 14:22:11 +0000 (15:22 +0100)]
Fix a crash in gdbserver-xen where it references unmapped memory if
the page directory / page table pages are not present (for example
through dereferencing NULL in the gdb session). Changes:

- map_domain_va_32 has been rewritten to match map_domain_va_pae and
  map_domain_va_64.

- All three functions have been extended to handle multiple vCPUs,
  (untested, but shuld work), and check for _PAGE_PRESENT.

- Keir's workaround for the compile error in map_domain_va_64 has been
  removed and hopefully fixed.

Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
19 years ago[NET] front: remove unnecessary include of proc_fs.h.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 20:41:56 +0000 (21:41 +0100)]
[NET] front: remove unnecessary include of proc_fs.h.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[IA64] panic when ioremap hypercall fails.
awilliam@xenbuild.aw [Thu, 18 May 2006 20:05:30 +0000 (14:05 -0600)]
[IA64] panic when ioremap hypercall fails.

This can occur when dom0 vp model xenlinux is used on P=M model xen/ia64.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years agoCheck `global' property of the arch specific virqs.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 15:19:18 +0000 (16:19 +0100)]
Check `global' property of the arch specific virqs.
Signed-off-by Kevin Tian <Kevin.tian@intel.com>

19 years agoRemove Emacs variables settings from tail of our Linux files.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 10:39:03 +0000 (11:39 +0100)]
Remove Emacs variables settings from tail of our Linux files.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoRename init_IRQ to xen_init_IRQ, so that non-x86 can use their own init_IRQ.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:46:07 +0000 (10:46 +0100)]
Rename init_IRQ to xen_init_IRQ, so that non-x86 can use their own init_IRQ.
Signed-off-by Kevin Tian <Kevin.tian@intel.com>

19 years agoRemove __TEST_HARNESS__ tests from x86_emulate: instead check for __XEN__
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:43:05 +0000 (10:43 +0100)]
Remove __TEST_HARNESS__ tests from x86_emulate: instead check for __XEN__
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[NET] front: clean up create_netdev interface.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:40:55 +0000 (10:40 +0100)]
[NET] front: clean up create_netdev interface.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[NET] front: Add a sysfs interface for tuning the receive buffer values.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:21:11 +0000 (10:21 +0100)]
[NET] front: Add a sysfs interface for tuning the receive buffer values.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: Give netfront a procectomy. The existing /proc interface
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:15:14 +0000 (10:15 +0100)]
[NET] front: Give netfront a procectomy. The existing /proc interface
for tuning is buggy (network device names can change), and would
not be accepted in mainline.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: Network devices need to be freed by free_netdev not kfree.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:12:07 +0000 (10:12 +0100)]
[NET] front: Network devices need to be freed by free_netdev not kfree.
Also, fix some missing unwinds in error path.
Still not convinced there aren't some lurking double free's in the error
paths here.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: The initialization and removal functions should be tagged
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:06:52 +0000 (10:06 +0100)]
[NET] front: The initialization and removal functions should be tagged
with proper section attributes to save space.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: The receive buffer accounting should be unsigned to avoid
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:05:32 +0000 (10:05 +0100)]
[NET] front: The receive buffer accounting should be unsigned to avoid
range comparison issues.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: Minor style fix and eliminate Emacs style comment which
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:04:26 +0000 (10:04 +0100)]
[NET] front: Minor style fix and eliminate Emacs style comment which
is considered poor taste by current kernel community.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
19 years ago[NET] front: clean up transmit queue waking
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 09:02:32 +0000 (10:02 +0100)]
[NET] front: clean up transmit queue waking

Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[NET] front: Replace user_state with netif_running
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 08:41:29 +0000 (09:41 +0100)]
[NET] front: Replace user_state with netif_running

The user_state variable is simply replicating information that's already
present through netif_running.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years ago[NET] front: Remove tx_full and unnecessary queue operations
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 08:38:37 +0000 (09:38 +0100)]
[NET] front: Remove tx_full and unnecessary queue operations

The tx_full variable merely mirrors information already present in
the XOFF bit on the net device.  The net device architecture itself
is quite mature and can be trusted by Xen to maintain its state
correctly.

Also, it's pointless to stop the queue in close_netdev since it can
be waken up anyway since there could be a softirq running on another
CPU.  All of this is handled by unregister_netdev anyway.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
19 years agoFix the build after SVM patches.
kaf24@firebug.cl.cam.ac.uk [Thu, 18 May 2006 07:55:20 +0000 (08:55 +0100)]
Fix the build after SVM patches.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoSVM patch to add a host save area per core for the hypervisor and also
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 23:03:13 +0000 (00:03 +0100)]
SVM patch to add a host save area per core for the hypervisor and also
for the microcode.  The microcode area is not guaranteed to be
compatible with the vmcb layout, therefore will require it's own
"scratch pad".  Consolidate the per core areas into a single structure.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years agoFix register corruption caused by c/s 9922.
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 23:01:59 +0000 (00:01 +0100)]
Fix register corruption caused by c/s 9922.
From: Tom Woller <thomas.woller@amd.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years agoSVM patch to cleanup guest event injection logic, remove unnecessary
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:53:01 +0000 (23:53 +0100)]
SVM patch to cleanup guest event injection logic, remove unnecessary
event_injecting variable.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
19 years agoSVM patch to reverse the logic of the general1 intercepts for easier
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:51:39 +0000 (23:51 +0100)]
SVM patch to reverse the logic of the general1 intercepts for easier
reading, also add the INVD intercept with print/eip increment only.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
Signed-off-by: Mats Petersson <mats.petersson@amd.com>
19 years agoSVM patch to cleanup IOIO handling, do not use "real" mode but rather
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:50:23 +0000 (23:50 +0100)]
SVM patch to cleanup IOIO handling, do not use "real" mode but rather
the correct "bitness".

Signed-off-by: Tom Woller <thomas.woller@amd.com>
Signed-off-by: Mats Petersson <mats.petersson@amd.com>
19 years agoAdd hotkey 'v' to hypervisor monitor to print VMCS areas.
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:47:19 +0000 (23:47 +0100)]
Add hotkey 'v' to hypervisor monitor to print VMCS areas.
When crashing domain due failed vmenter print processor's VMCS.

Signed-off-by: Boris Ostrovsky <bostrovsky@virtualiron.com>
19 years agoAllow to specify different time-of-day clock offsets for HVM guests.
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:43:32 +0000 (23:43 +0100)]
Allow to specify different time-of-day clock offsets for HVM guests.

There are some usage scenarios in which differing user domains want
to be using different base TOD clocks. This patch adds the ability
to specify the base TOD time difference.  The patch also adds a
hook point to notify another entity when the domain changes this
offset. This might occur, for instance, on a Linux domain using
hwclock -w.

Signed-off-by: Ben Thomas <ben@virtualiron.com>
19 years agoTheoretically a 0 VIRT_BASE is okay. Change the bail code when
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:41:59 +0000 (23:41 +0100)]
Theoretically a 0 VIRT_BASE is okay. Change the bail code when
parsing elf headers to bail only when VIRT_BASE is not specified
at all.
Signed-off-by: Keir Fraser <keir@xensource.com>
19 years ago[IA64] pte_xchg added
awilliam@xenbuild.aw [Wed, 17 May 2006 22:31:46 +0000 (16:31 -0600)]
[IA64] pte_xchg added

pte_xchg added to atomically exchange pte.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years agoWhen doing local migration, a timing-related problem occurred due to the
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:28:22 +0000 (23:28 +0100)]
When doing local migration, a timing-related problem occurred due to the
frontend switching to the Closed state, which could end up having
the .remove function being called after the backend has shut down. This
now fixes the problem by switching to the Closing state.
The other part of the patch cleans up freeing of memory.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
19 years agoVTPM_TOOLS: Restructured handlers for better clearity and created an ipc
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:23:26 +0000 (23:23 +0100)]
VTPM_TOOLS: Restructured handlers for better clearity and created an ipc
abstraction needed for expansion to hot plug and migration support. Also
fixed a bug in savestate.

Signed-off-by: Vinnie Scarlata <Vincent.r.scarlata@intel.com>
19 years agoThis patch fixes the Linux builder so that it dies gracefully when
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:19:18 +0000 (23:19 +0100)]
This patch fixes the Linux builder so that it dies gracefully when
trying to load malformed ELF images.
Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil@unisys.com>
19 years agoThis patch fixes the x86_64 __xen_guest section allowing Mini-OS to run again.
kaf24@firebug.cl.cam.ac.uk [Wed, 17 May 2006 22:15:36 +0000 (23:15 +0100)]
This patch fixes the x86_64 __xen_guest section allowing Mini-OS to run again.
Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil@unisys.com>
19 years ago[IA64] add parameter check to ioremap hypercall
awilliam@xenbuild.aw [Wed, 17 May 2006 21:53:14 +0000 (15:53 -0600)]
[IA64] add parameter check to ioremap hypercall

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
19 years ago[IA64] struct mm is now a field of struct domain
awilliam@xenbuild.aw [Wed, 17 May 2006 21:53:05 +0000 (15:53 -0600)]
[IA64] struct mm is now a field of struct domain

struct mm is now a field of struct domain (instead of a pointer).

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years ago[IA64] Correctly set aml code of domU dsdt.
awilliam@xenbuild.aw [Wed, 17 May 2006 21:53:00 +0000 (15:53 -0600)]
[IA64] Correctly set aml code of domU dsdt.

Previously it was corrupted (bad length).

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
19 years ago[IA64] Fix xm pause/unpause bug
awilliam@xenbuild.aw [Wed, 17 May 2006 21:52:55 +0000 (15:52 -0600)]
[IA64] Fix xm pause/unpause bug

This small patch intends to fix domain pause/unpause bug.
Current xm pause operation will do sync_vcpu_execstate to
sync vcpu status, but it saves dom0's fpu and other registers
to VTi domain or domainU due to xm pause from control panel.
Because sync_vcpu_execstate was called after vcpu_sleep which
has saved all status when schedule out ,in addition, currently
no lazy states need to be saved in IPF side, so sync_vcpu_execstate
would need do nothing now.

Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Zhang xiantao <xiantao.zhang@intel.com>
19 years ago[IA64] Fix VTi domain destroy bug
awilliam@xenbuild.aw [Wed, 17 May 2006 21:52:10 +0000 (15:52 -0600)]
[IA64] Fix VTi domain destroy bug

This patch will fix VTi domain destroy bug. On tip, we couldn't
destroy VTi successfully at times. It was caused by misusing
vhpt base address for VTi domain in vhpt_flush function.

Signed-off-by : Zhang xiantao <xiantao.zhang@intel.com>

19 years agoAdd some locking to the PIC device model. Improves SMP guest stability.
kaf24@firebug.cl.cam.ac.uk [Tue, 16 May 2006 18:54:41 +0000 (19:54 +0100)]
Add some locking to the PIC device model. Improves SMP guest stability.
Signed-off-by: David Lively <dlively@virtualiron.com>
19 years ago[IA64] Include automated sparse merge script
awilliam@xenbuild.aw [Tue, 16 May 2006 18:54:26 +0000 (12:54 -0600)]
[IA64] Include automated sparse merge script

This script automates merging the sparse tree to new upstream
kernel revisions.  When possible the files are automatically
patched to the new version, if that fails, the xen and upstream
patches are tried in reverse order, if that fails, the method
producing the smallest reject is left for manual merging.

Run as:

# LINUXPATH=$HOME/linux-2.6 sparse-merge

Where LINUXPATH is a local mercurial tree of the upstream kernel
(available from http://www.kernel.org/hg/linux-2.6).  NEWTAG and
OLDTAG may also be specified if the autodetection does not work.
By default, NEWTAG will be the latest upstream version.  If NEWTAG
or OLDTAG is an extra-version (ex. 2.6.16.13), ketchup will be
used to update the mercurial tree and add the appropriate tag.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Aron Griffis <aron@hp.com>